home *** CD-ROM | disk | FTP | other *** search
/ Amiga Magazin: Amiga-CD 1996 March / Amiga-CD 1996 #3.iso / pd-software / mui_3.1 / developer / oberon / txt / muigroup.mod < prev    next >
Text File  |  1996-01-19  |  2KB  |  58 lines

  1. MODULE MUIGroup;
  2.  
  3. (* $StackChk- $NilChk- $RangeChk- $CaseChk- $OvflChk- $ReturnChk- $ClearVars- *)
  4.  
  5. (* This module is generated by "GenMuiO" © 1995 by Albert Weinert *)
  6.  
  7. IMPORT
  8.   clf := Classface,
  9.   e := Exec,
  10.   m := Mui,
  11.   RootClass,
  12.   SuperClass := MUIArea,
  13.   I := Intuition;
  14.  
  15. CONST
  16.   name *= m.cGroup;
  17.  
  18. TYPE
  19.   Class     *= UNTRACED POINTER TO ClassDesc;
  20.   ClassDesc *= RECORD( SuperClass.ClassDesc ) END;
  21.  
  22. VAR
  23.   class * : I.IClassPtr;
  24.  
  25.    PROCEDURE ( VAR c : ClassDesc ) mExitChange*( VAR msg : m.pGroupExitChange ):e.APTR;
  26.      BEGIN
  27.        msg.msg.methodID := m.mGroupExitChange;
  28.        RETURN clf.DoSuperMethodA( c.class, c.object, msg )
  29.      END mExitChange;
  30.  
  31.    PROCEDURE ( VAR c : ClassDesc ) mInitChange*( VAR msg : m.pGroupInitChange ):e.APTR;
  32.      BEGIN
  33.        msg.msg.methodID := m.mGroupInitChange;
  34.        RETURN clf.DoSuperMethodA( c.class, c.object, msg )
  35.      END mInitChange;
  36.  
  37.   PROCEDURE Dispatch * ( cl : I.IClassPtr; obj : I.ObjectPtr; msg : I.MsgPtr ):e.APTR;
  38.     VAR c : Class;
  39.     BEGIN
  40.       IF msg.methodID # I.new THEN
  41.         c := RootClass.BoopsiToObj( cl, obj )(Class);
  42.       END;
  43.  
  44.       CASE msg.methodID OF
  45.         | m.mGroupExitChange          : RETURN c.mExitChange( msg^(m.pGroupExitChange) );
  46.         | m.mGroupInitChange          : RETURN c.mInitChange( msg^(m.pGroupInitChange) );
  47.       ELSE
  48.         RETURN SuperClass.Dispatch( cl, obj, msg );
  49.       END;
  50.     END Dispatch;
  51.  
  52. BEGIN
  53.   class := m.GetClass( name );
  54.   IF class = NIL THEN HALT( 205 ) END; (* Error : Object not Found *)
  55. CLOSE
  56.   IF class # NIL THEN m.FreeClass( class ) END;
  57. END MUIGroup.
  58.